/*all tag 通配符*/
*{
    margin: 0;
    padding: 0;
    border: none;
    font-size: 1.5625vw;
    font-style: inherit;
}
/*此处若没有HTML body的高度，后面的背景图会覆盖*/
html,
body{
    height: 100%;
    overflow: hidden;
}
/*music*/
.music{
    position: fixed;
    top: 3vh;
    right: 4vw;
    z-index: 5;
    width:15vw;
    height:15vw;
    border:2px solid #ef1639 ;
    border-radius: 50%;
}
/*直接后代选择器 缺空格会获取不到对象*/
.music> img:first-of-type{
    position: absolute;
    top: 24%;
    right: 2.5%;
    width: 28.421%;
    z-index: 4;
}
.music> img:last-of-type{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 79%;
    margin: auto;
}
.music> img.play{
    animation: music_disc 4s linear infinite;
}
@keyframes music_disc{
    0%{
        transform: rotate(0deg);
    }
    100%{
        transform: rotate(360deg);
    }
}
/*page bg*/
.page {
    position: absolute;
    width: 100%;
    height: 100%;
}
.page > .bg {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
}
/*page1*/
#page1{
    display: block;
}
#page1 > .bg{
    /*左右居中 上下居中*/
    background: url("../images/p1_bg.jpg") no-repeat center center;
    background-size: 100%;
}
#page1 > .p1_lantern{
    position: absolute;
    right: 0;
    left: 0;
    margin: auto;
    top: -3.4%;
    background: url("../images/p1_lantern.png") no-repeat center bottom;
    background-size: 100%;
    width: 45vw;
    height: 71.2vh;
    font-size: 3.506rem;
    color: #ffffff;
    padding-top: 27vh;
    text-align: center;
    box-sizing: border-box;
}
/*？伪类*/
#page1 > .p1_lantern:before{
    position: absolute;
    top: -10%;
    right: 0;
    bottom: 0;
    left: 0;
    content:"";
    background: red;
    z-index: -1;
    margin: auto;
    opacity: .5;
    width: 30vw;
    height: 30vw;
    border-radius: 50%;
    -webkit-box-shadow: 0 0 10vw 10vw red;
       -moz-box-shadow: 0 0 10vw 10vw red;
         -o-box-shadow: 0 0 10vw 10vw red;
            box-shadow: 0 0 10vw 10vw red;

    animation: p1_lantern .5s infinite alternate;
}
@keyframes p1_lantern{
    0%{
        opacity: .4;
        transform: scale(.8 .8);
    }
    100%{
        opacity: .6;
    }
}
#page1 > .p1_words{
    font-size: 2.134rem;
    position: absolute;
    right: 0;
    bottom: 48px;
    left: 0;
    text-align: center;
    color: black;
}
/*page2*/
#page2{
    display: none;
    transition: .5s;
}
#page2.fadeOut{
    opacity: .3;
    transform: translate(0,-100%);
}
#page2 > .bg{
    background: url("../images/p2_bg.jpg") no-repeat center center;
    background-size: 100%;
}
#page2 > .p2_circle{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    width: 59.375vw;
    height: 59.375vw;
    background: url("../images/p2_circle_outer.png") no-repeat center center;
    background-size: 100%;
    border-radius: 50%;
    animation: p2_circle_outer 1s linear 3s infinite;
}
@keyframes p2_circle_outer {
    0%{
        transform: rotate(0deg);
    }
    100%{
        transform: rotate(-360deg);
    }
}
#page2 > .p2_circle:before{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    width: 45.625vw;
    height: 45.625vw;
    background: url("../images/p2_circle_middle.png") no-repeat center center;
    background-size: 100%;
    border-radius: 50%;
    animation: p2_circle_middle 1s linear 2s infinite;
}
@keyframes p2_circle_middle{
    0%{
        transform: rotate(0deg);
    }
    100%{
        transform: rotate(720deg);
    }
}
#page2 > .p2_circle:after{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    width: 39.9375vw;
    height: 39.9375vw;
    background: url("../images/p2_circle_inner.png") no-repeat center center;
    background-size: 100%;
    border-radius: 50%;
    animation: p2_circle_inner 1s linear 1s infinite;
}
@keyframes p2_circle_inner{
    0%{
        transform: rotate(0deg);
    }
    100%{
        transform: rotate(-1080deg);
    }
}
#page2 > .p2_2017{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 27.5vw;
    height: 6.24vh;
    background: url("../images/p2_2017.jpg") no-repeat center center;
    background-size: 100%;
}
/*page3*/
#page3{
    display: none;
    transition: .5s;
}
#page3.fadeIn{
    transform: translate(0,-100%);
}
#page3 > .bg{
    background: url("../images/p3_bg.jpg") no-repeat center center;
    background-size: 100%;
}

/*
#page3 > .p3_logo{
    position: absolute;
    top: 7.82vh;
    right: 0;
    left: 0;
    margin: auto;
    width: 34.6875vw;
    height: 6.327vh;
    background: url("../images/p3_title.png") no-repeat center;
    background-size: 100%;
}
*/

#page3 > .p3_title{
    position: absolute;
    top: 13vh;
    right: 0;
    left: 0;
    margin: auto;
    width: 48.125vw;
    height: 58vh;
    background: url("../images/p3_title.png") no-repeat center;
    background-size: 100%;
}
#page3 > .p3_second{
    position: absolute;
    top: 25.78vh;
    left: 3.75vw;
    width: 22.8125vw;
    height: 41.652vh;
    background: url("../images/p3_couplet_second.png") no-repeat center;
    background-size: 100%;
    animation: p3_second 1s linear infinite;
}
@keyframes p3_second {
    0%{
        transform: scale(1);
    }
    50%{
        transform: scale(.8);
    }
    100%{
        transform: scale(1);
    }
}
#page3 > .p3_first{
    position: absolute;
    top: 25.78vh;
    right: 3.75vw;
    margin: auto;
    width: 22.8125vw;
    height: 41.652vh;
    background: url("../images/p3_couplet_first.png") no-repeat center;
    background-size: 100%;
    animation: p3_first 1s linear infinite;
}
@keyframes p3_first {
    0%{
        transform: scale(1);
    }
    50%{
        transform: scale(.8);
    }
    100%{
        transform: scale(1);
    }
}
#page3 > .p3_fu{
    position: absolute;
    right: 0;
    bottom: 10vh;
    left: 0;
    margin: auto;
    width: 32vw;
    height: 32vw;
    background: url("../images/p3_blessing.png") no-repeat center;
    background-size: 100%;
    animation: p3_fu 2s linear infinite;
}
@keyframes p3_fu {
    0%{
        transform: rotate(0deg);
    }
    100%{
        transform: rotate(360deg);
    }
}
